package avicit.ma.ma.na.demomain.dto;

import avicit.platform6.core.annotation.log.FieldRemark;
import avicit.platform6.core.excel.validate.*;
import com.alibaba.excel.annotation.*;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.*;
import java.lang.Integer;
import java.lang.String;
import java.math.BigDecimal;
import java.util.Date;
import javax.validation.constraints.*;

/**
 * demoMainDTO导入类
 *
 * @author admin
 * @version V1.0.0
 * @date 2024-11-18 14:17:22
 * @since V1.0.0
 */
@ExcelIgnoreUnannotated
public class DemoMainImportDTO {

  /**
   * 用户
   */
  @NotBlank(message = "用户不能为空")
  @ExcelProperty("用户")
  private String demoUserId;

  /**
   * 部门
   */
  @ExcelProperty("部门")
  private String demoDeptId;

  /**
   * 角色
   */
  @ExcelProperty("角色")
  private String demoRoleId;

  /**
   * 群组
   */
  @ExcelProperty("群组")
  private String demoGroupId;

  /**
   * 岗位
   */
  @ExcelProperty("岗位")
  private String demoPositionId;

  /**
   * 单选
   */
  @ExcelProperty("单选")
  private String demoRadio;

  /**
   * 单选（按钮样式）
   */
  @ExcelProperty("单选（按钮样式）")
  private String demoRadioButton;

  /**
   * 复选
   */
  @ExcelProperty("复选")
  private String demoCheckbox;

  /**
   * 下拉
   */
  @ExcelProperty("下拉")
  private String demoSelect;

  /**
   * 下拉多选
   */
  @ExcelProperty("下拉多选")
  private String demoSelectMultiple;

  /**
   * 密级
   */
  @FieldRemark(dataType = "lookup", lookupType = "PLATFORM_FILE_SECRET_LEVEL")
  @ExcelProperty("密级")
  private String secretLevelName;

  /**
   * 开关
   */
  @ExcelProperty("开关")
  private String demoSwitch;

  /**
   * 小数
   */
  @Digits(integer = 12, fraction = 2, message = "小数必须是0到之间的数值")
  @DecimalMin(value = "0", message = "小数不能小于等于0")
  @DecimalMax(value = "", message = "小数不能大于等于")
  @ExcelProperty("小数")
  private BigDecimal demoNumber;

  /**
   * 整数
   */
  @Digits(integer = 10, fraction = 0, message = "整数必须是0到2147483647之间的数值")
  @DecimalMin(value = "0", message = "整数不能小于等于0")
  @DecimalMax(value = "2147483647", message = "整数不能大于等于2147483647")
  @ExcelProperty("整数")
  private Integer demoInteger;

  /**
   * 日期
   */
  @ExcelImportDateTimeStr(type = ExcelImportDateTimeType.date, message = "【日期】格式错误，正确格式包括：yyyy-MM-dd")
  @ExcelProperty("日期")
  private Date demoDate;

  /**
   * 日期时间
   */
  @ExcelImportDateTimeStr(type = ExcelImportDateTimeType.date, message = "【日期时间】格式错误，正确格式包括：yyyy-MM-dd")
  @ExcelProperty("日期时间")
  private Date demoDateTime;

  /**
   * 必填
   */
  @NotBlank(message = "必填不能为空")
  @ExcelProperty("必填")
  private String demoNotnull;

  /**
   * 编码
   */
  @Size(max = 255, message = "编码长度不能超过255个字符")
  @ExcelProperty("编码")
  private String demoCode;

  /**
   * 电话(正则)
   */
  @Size(max = 255, message = "电话(正则)长度不能超过255个字符")
  @ExcelProperty("电话(正则)")
  private String demoPhone;

  /**
   * 邮件(正则)
   */
  @Size(max = 255, message = "邮件(正则)长度不能超过255个字符")
  @ExcelProperty("邮件(正则)")
  private String demoEmail;

  /**
   * 网址(正则)
   */
  @Size(max = 255, message = "网址(正则)长度不能超过255个字符")
  @ExcelProperty("网址(正则)")
  private String demoWebsite;

  /**
   * 唯一值
   */
  @Size(max = 255, message = "唯一值长度不能超过255个字符")
  @ExcelProperty("唯一值")
  private String demoUnique;

  /**
   * 弹窗
   */
  @Size(max = 255, message = "弹窗长度不能超过255个字符")
  @ExcelProperty("弹窗")
  private String demoModalSelect;

  /**
   * 背景样式
   */
  @Size(max = 255, message = "背景样式长度不能超过255个字符")
  @ExcelProperty("背景样式")
  private String demoBackgroundColor;

  /**
   * 富文本
   */
  @Size(max = 65535, message = "富文本长度不能超过65535个字符")
  @ExcelProperty("富文本")
  private String demoRichtext;

  /**
   * 多行文本
   */
  @Size(max = 4000, message = "多行文本长度不能超过4000个字符")
  @ExcelProperty("多行文本")
  private String demoTextarea;

  /**
   * demoText2
   */
  @Size(max = 255, message = "demoText2长度不能超过255个字符")
  @ExcelProperty("demoText2")
  private String demoText2;

  @ColumnWidth(30)
  @ContentFontStyle(color = 10)
  @ExcelProperty("错误信息")
  private String errorInfo;

  public String getDemoUserId() {
    return demoUserId;
  }

  public void setDemoUserId(String demoUserId) {
    this.demoUserId = demoUserId;
  }

  public String getDemoDeptId() {
    return demoDeptId;
  }

  public void setDemoDeptId(String demoDeptId) {
    this.demoDeptId = demoDeptId;
  }

  public String getDemoRoleId() {
    return demoRoleId;
  }

  public void setDemoRoleId(String demoRoleId) {
    this.demoRoleId = demoRoleId;
  }

  public String getDemoGroupId() {
    return demoGroupId;
  }

  public void setDemoGroupId(String demoGroupId) {
    this.demoGroupId = demoGroupId;
  }

  public String getDemoPositionId() {
    return demoPositionId;
  }

  public void setDemoPositionId(String demoPositionId) {
    this.demoPositionId = demoPositionId;
  }

  public String getDemoRadio() {
    return demoRadio;
  }

  public void setDemoRadio(String demoRadio) {
    this.demoRadio = demoRadio;
  }

  public String getDemoRadioButton() {
    return demoRadioButton;
  }

  public void setDemoRadioButton(String demoRadioButton) {
    this.demoRadioButton = demoRadioButton;
  }

  public String getDemoCheckbox() {
    return demoCheckbox;
  }

  public void setDemoCheckbox(String demoCheckbox) {
    this.demoCheckbox = demoCheckbox;
  }

  public String getDemoSelect() {
    return demoSelect;
  }

  public void setDemoSelect(String demoSelect) {
    this.demoSelect = demoSelect;
  }

  public String getDemoSelectMultiple() {
    return demoSelectMultiple;
  }

  public void setDemoSelectMultiple(String demoSelectMultiple) {
    this.demoSelectMultiple = demoSelectMultiple;
  }

  public String getSecretLevelName() {
    return secretLevelName;
  }

  public void setSecretLevelName(String secretLevelName) {
    this.secretLevelName = secretLevelName;
  }

  public String getDemoSwitch() {
    return demoSwitch;
  }

  public void setDemoSwitch(String demoSwitch) {
    this.demoSwitch = demoSwitch;
  }

  public BigDecimal getDemoNumber() {
    return demoNumber;
  }

  public void setDemoNumber(BigDecimal demoNumber) {
    this.demoNumber = demoNumber;
  }

  public Integer getDemoInteger() {
    return demoInteger;
  }

  public void setDemoInteger(Integer demoInteger) {
    this.demoInteger = demoInteger;
  }

  public Date getDemoDate() {
    return demoDate;
  }

  public void setDemoDate(Date demoDate) {
    this.demoDate = demoDate;
  }

  public Date getDemoDateTime() {
    return demoDateTime;
  }

  public void setDemoDateTime(Date demoDateTime) {
    this.demoDateTime = demoDateTime;
  }

  public String getDemoNotnull() {
    return demoNotnull;
  }

  public void setDemoNotnull(String demoNotnull) {
    this.demoNotnull = demoNotnull;
  }

  public String getDemoCode() {
    return demoCode;
  }

  public void setDemoCode(String demoCode) {
    this.demoCode = demoCode;
  }

  public String getDemoPhone() {
    return demoPhone;
  }

  public void setDemoPhone(String demoPhone) {
    this.demoPhone = demoPhone;
  }

  public String getDemoEmail() {
    return demoEmail;
  }

  public void setDemoEmail(String demoEmail) {
    this.demoEmail = demoEmail;
  }

  public String getDemoWebsite() {
    return demoWebsite;
  }

  public void setDemoWebsite(String demoWebsite) {
    this.demoWebsite = demoWebsite;
  }

  public String getDemoUnique() {
    return demoUnique;
  }

  public void setDemoUnique(String demoUnique) {
    this.demoUnique = demoUnique;
  }

  public String getDemoModalSelect() {
    return demoModalSelect;
  }

  public void setDemoModalSelect(String demoModalSelect) {
    this.demoModalSelect = demoModalSelect;
  }

  public String getDemoBackgroundColor() {
    return demoBackgroundColor;
  }

  public void setDemoBackgroundColor(String demoBackgroundColor) {
    this.demoBackgroundColor = demoBackgroundColor;
  }

  public String getDemoRichtext() {
    return demoRichtext;
  }

  public void setDemoRichtext(String demoRichtext) {
    this.demoRichtext = demoRichtext;
  }

  public String getDemoTextarea() {
    return demoTextarea;
  }

  public void setDemoTextarea(String demoTextarea) {
    this.demoTextarea = demoTextarea;
  }

  public String getDemoText2() {
    return demoText2;
  }

  public void setDemoText2(String demoText2) {
    this.demoText2 = demoText2;
  }

  public String getErrorInfo() {
    return errorInfo;
  }

  public void setErrorInfo(String errorInfo) {
    this.errorInfo = errorInfo;
  }
}
